package com.shujia

// Scala中的特征 相对于Java中的接口
trait Demo17Trait {
  val i: Int = 10

  // 定义了抽象的方法
  def isEqual(i: Int): Boolean

  // 对方法进行了具体的实现
  def isNotEqual(i: Int): Boolean = {
    !isEqual(i)
  }

}

class P(id: String) {
  val _id: String = id
}


class F(id: String) extends P(id) with Demo17Trait {
  override def isEqual(i: Int): Boolean = {
    id.toInt == i
  }
}

object Demo17Obj {
  def main(args: Array[String]): Unit = {
    val q = new F("18")
    println(q.i)
    println(q._id)
    println(q.isEqual(18))
    println(q.isNotEqual(18))
    println(q.isEqual(20))
    println(q.isNotEqual(20))
  }
}
